Skip to content

feat: remove product config & clean up#716

Open
maltesander wants to merge 18 commits into
mainfrom
refactor/remove-product-config
Open

feat: remove product config & clean up#716
maltesander wants to merge 18 commits into
mainfrom
refactor/remove-product-config

Conversation

@maltesander
Copy link
Copy Markdown
Member

Description

  • remove product config
  • move to config map builder step

Definition of Done Checklist

  • Not all of these items are applicable to all PRs, the author should update this template to only leave the boxes in that are relevant
  • Please make sure all these things are done and tick the boxes

Author

  • Changes are OpenShift compatible
  • CRD changes approved
  • CRD documentation for all fields, following the style guide.
  • Helm chart can be installed and deployed operator works
  • Integration tests passed (for non trivial changes)
  • Changes need to be "offline" compatible
  • Links to generated (nightly) docs added
  • Release note snippet added

Reviewer

  • Code contains useful comments
  • Code contains useful logging statements
  • (Integration-)Test cases added
  • Documentation added or updated. Follows the style guide.
  • Changelog updated
  • Cargo.toml only contains references to git tags (not specific commits or branches)

Acceptance

  • Feature Tracker has been updated
  • Proper release label has been added
  • Links to generated (nightly) docs added
  • Release note snippet added
  • Add type/deprecation label & add to the deprecation schedule
  • Add type/experimental label & add to the experimental features tracker

maltesander and others added 15 commits June 3, 2026 15:24
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Replaces product-config's writer module. Lives in framework::writer and
renders hive-site.xml (Hadoop XML) and security.properties (Java properties),
matching product-config's output. Also scaffolds controller/build with
placeholders for the per-file builders.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
… builders

Reshape ValidatedCluster (name, image, cluster_config, role_group_configs) and
validate via framework::role_utils::with_validated_config. Build hive-site.xml,
security.properties and core-site.xml via dedicated builders + the vendored
writer. Switch HiveConfigOverrides to v2 KeyValueConfigOverrides (key-by-key
Merge). product-config is now only referenced by the crd Configuration impl.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Remove the Configuration impl for MetaStoreConfigFragment and the product-config
crate from the workspace. product-config now only appears transitively via
stackable-operator. The deploy/config-spec packaging is left in place to mirror
trino-operator (it is operator-templating-managed infrastructure).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Resolve the JDBC driver, Kerberos hive-site entries and the core-site decision
into ValidatedClusterConfig during validation, so hive_site/core_site builders
consume only ValidatedClusterConfig. config_map keeps an explicit `owner:
&HiveCluster` solely for the ObjectMeta owner reference. Rename the reconcile
binding `validated` -> `validated_cluster`.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
maltesander and others added 3 commits June 4, 2026 13:47
Replace the vendored java-properties/Hadoop-XML writer
(rust/operator-binary/src/framework/writer.rs) with
stackable_operator::v2::config_file_writer, which hosts the same code
(moved there verbatim via operator-rs #1217 on the smooth-operator branch;
hive's copy was byte-identical to hdfs's, the canonical source). Drop the
now-unused java-properties and xml dependencies. The framework module now
only contains role_utils.

The base dependency tag moves from stackable-operator-0.111.0 to 0.111.1,
matching the other operators; cargo only substitutes a [patch] whose package
version matches, and the smooth-operator branch carries 0.111.1.

No behaviour change; rendered output is byte-identical by construction
(same code, new home).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants